Towards Automating Source-Consistent UML Refactorings

نویسندگان

  • Pieter Van Gorp
  • Hans Stenten
  • Tom Mens
  • Serge Demeyer
چکیده

With the increased interest in refactoring, UML tool vendors seek ways to support software developers in applying a (sequence of) refactoring(s). The problem with such tools is that the UML metamodel – on which their repository is based – is inadequate to maintain the consistency between the model and the code while one of them gets refactored. Therefore, we propose a set of minimal extensions to the UML metamodel, which is sufficient to reason about refactoring for all common OO languages. For instance, by specifying preand postconditions in OCL, we are able to compose primitive refactorings, verify preservation of program behavior, and trigger refactorings based on code smells. This way, we provide future MDA tools with the ability to improve existing UML designs, yet keeping them in synch with the underlying code base.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Towards a language independent refactoring framework

Using metamodels to keep source code information is one of the current trends in refactoring tools. This representation makes possible to detect refactoring opportunities, and to execute refactorings on metamodel instances. This paper describes an approach to language independent reuse in metamodel based refactoring detection and execution. We use an experimental metamodel, MOON, and analyze th...

متن کامل

Implementing Refactorings as Graph Rewrite Rules on a Platform Independent Metamodel

Increasingly more developers are applying refactorings program transformations that can improve the design of existing source code to make their software more easily adaptable to new requirements. Because small changes to object-oriented software (such as renaming a class) can require a lot of updates to several source files, tools that automatically update the affected files can save these dev...

متن کامل

Specifying Domain-Specific Refactorings for AndroMDA Based on Graph Transformation

Applying refactoring in a model-driven software engineering context raises many new challenges that need to be addressed. In this paper, we consider model-driven software development based on the code generation framework AndroMDA. Considering the UML profile for AndroMDA, we come up with a number of domain-specific model refactorings. In its most recent version, the AndroMDA code generation ca...

متن کامل

Tool to Measure and Refactor Complex UML Models

Using UML modeling for designing a software product is heavily used by the industry. However the tool support for model based development have not reached the same level as the tool support of source code based development. Our goal was to provide a tool to support refactoring and static analysis of UML models, which were developed in the open source modeling framework, Papyrus [Papyrus 2014]. ...

متن کامل

Model Refactorings as Rule-Based Update Transformations

A model refactoring is a model transformation that preservers some behavioral properties of a model. Equally important, a model refactoring should only affect a previously chosen subset of the source model. In this paper, we discuss how to define and execute model refactorings as rule-based transformations. We also present an experimental tool to execute these transformations.

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003